#include <iostream>
using namespace std;
//函数返回值类型后置c++11
//c++14中优化可以只用auto,不必尾随返回值类型
template <typename T1, typename T2>
auto fun(T1 a,T2 b) -> decltype(a+b)
{
    decltype(a+b) tmp=a+b;
    return tmp;
}
int main()
{
    cout<<fun(1,2.5)<<endl;
    cout<<typeid(fun(1,2.5)).name()<<endl;
    return 0;
}